<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>使用函数完成递归算法</title>
</head>
<body>
    
</body>
<script>
    /*
        当我们学习了递归的的时候  不要太慌 慢慢来
            递归一般都会涉及到层级的问题  我们不需要考虑太多  只需要考虑两层
                1刚开始第一层的表达  2是什么时候会停止递归
        记住这个规律  递归其实一点都不难
    */

    // 阶乘算法  5的阶乘 = 5*4*3*2*1 = 120
    function jiecheng(num){
        // 1 判断什么时候会停止阶乘循环
        if(num === 1){
            // 在算阶乘时 如果最后一个数为1时就代表已经是最后一层了  就没有必要再继续往下计算了
            return 1
        }
        // 2 第一层时的表达式
        return num * jiecheng(num-1)
    }
    console.log(jiecheng(5))  //120
</script>
</html>